package com.goldsign.pay.provider.sample;

import java.util.ArrayList;
import java.util.List;

//import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.context.annotation.Bean;
import org.springframework.http.MediaType;

import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;

/**
 * Spring Boot Eureka Server 应用启动类
 *
 */
@EnableEurekaClient    
@SpringBootApplication  
public class ProviderSample {

    public static void main(String[] args) {
        SpringApplication.run(ProviderSample.class,args);
    }
    
    /**
     * SpringBoot使用FastJson
     * 描述：  阿里巴巴FastJson是一个Json处理工具包，包括“序列化”和“反序列化”两部分，它具备如下特征：
		          速度最快，测试表明，fastjson具有极快的性能，超越任其他的Java Json parser。包括自称最快的JackJson；
		          功能强大，完全支持Java Bean、集合、Map、日期、Enum，支持范型，支持自省；无依赖，能够直接运行在Java SE 5.0以上版本；
		          支持Android；开源 (Apache 2.0) 另外一点，SpringBoot默认json转换器为Jackson
     * @return
     */
/*    @Bean
    public HttpMessageConverters fastJsonHttpMessageConverters()
    {
       //创建FastJson信息转化对象
       FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();
       //创建Fastjson 对象并设定序列化规则
       FastJsonConfig fastJsonConfig = new FastJsonConfig();
       fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
       // 中文乱码解决方案
       List<MediaType> mediaTypes = new ArrayList();
       mediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
       fastJsonHttpMessageConverter.setSupportedMediaTypes(mediaTypes);

       //规则赋予转化对象
       fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig);
       return new HttpMessageConverters(fastJsonHttpMessageConverter);
    }*/
}
